const router = require('koa-router')({prefix: '/place'});
const controller = require('controller/place.js');
const multer = require('lib/utils/koaMulter');

/**
 * @api {post} /place/import 导入车位信息
 * @apiVersion 1.0.0
 * @apiName import
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/import
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.post('/import', multer.fields([
	{ name: 'file', maxCount: 1 },
]), controller.importController);

/**
 * @api {get} /place/download 下载车位信息
 * @apiVersion 1.0.0
 * @apiName download
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/download
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.get('/download', controller.download);

/**
 * @api {get} /place/list 车位列表
 * @apiVersion 1.0.0
 * @apiName list
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/list
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.get('/list', controller.list);

/**
 * @api {post} /place/add 添加车位
 * @apiVersion 1.0.0
 * @apiName add
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/add
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.post('/add', controller.add);

/**
 * @api {post} /place/edit 编辑车位
 * @apiVersion 1.0.0
 * @apiName edit
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/edit
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.post('/edit', controller.edit);

/**
 * @api {delete} /place/delete 删除车位
 * @apiVersion 1.0.0
 * @apiName delete
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/delete
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.delete('/delete', controller.delete);

/**
 * @api {post} /place/fixed 设置固定车位
 * @apiVersion 1.0.0
 * @apiName fixed
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/fixed
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.post('/fixed', controller.fixed);

/**
 * @api {post} /place/idle 设置车位空闲状态
 * @apiVersion 1.0.0
 * @apiName idle
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/idle
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.post('/idle', controller.idle);

/**
 * @api {get} /place/easyList 导出进出记录
 * @apiVersion 1.0.0
 * @apiName easyList
 * @apiGroup 车位模块
 * @apiHeader {String} Authorization 用户授权token
 * @apiSampleRequest /place/easyList
 * @apiSuccessExample {json} 请求成功：
 * {}
 */
router.get('/easyList', controller.easyList);

module.exports = router;
